package questionLibrary;

import static org.junit.Assert.*;

import org.junit.Test;

import questionLibrary.QuestionInfo;
import questionLibrary.QuestionLibrary;
import questionLibrary.SomeConstants;

public class QuestionLibraryTest {

	@Test 
	public void testOfQuestions() { //TODO sdelat normalnuy test!!!!
		
		QuestionLibrary lib = new QuestionLibrary();
		QuestionInfo testQuestion = lib.getQuestion(2);
		String questionShouldBe="Занимался ли господин сегодня умственным трудом?";
		boolean questionIsOk, answersIsOk, effectIsOk;  //3 tests in one :)
		
		questionIsOk=(testQuestion.getQuestion().equals(questionShouldBe))?true:false;

		String realAnswers[]={  "Нет, я не использовал свой мозг вообще... мне нужны букы... цифры!",
								"Да, немного. Я сегодня посчитал сдачу от денег, которые я заплатил за хлеб.", 
								"Да, занимался творческим, интеллектуальным трудом. Ощущаю интеллектуальный подъем и вдохновение ",
								"Да, занимался жестким интеллектуальным трудом весь день. Устал, болит голова."};
		
		String gettingAnswers[]=testQuestion.getAnswers();
		
		answersIsOk = true;
		
		for(int j=0;j<testQuestion.getCountOfAnswers();j++)
			if (realAnswers[j]!=gettingAnswers[j]) { answersIsOk = false; break;}
		
		int gettingEffect=testQuestion.getEffect(SomeConstants.LIVER, SomeConstants.DETOXIFICATION, 3);		
		effectIsOk = (gettingEffect==0)?true:false;	
		assertTrue(questionIsOk && answersIsOk && effectIsOk); //ewerithing is ok ?
	}
	
	@Test 
	public void testCountOfQuestions() { 
		
		QuestionLibrary lib = new QuestionLibrary();
		assertEquals(lib.getCountOfQuestions(),6); 
	}
	
}


